package com.gwl.pattern.builder;

import java.util.ArrayList;
import java.util.List;

public class Director {

	private BenzBuilder benzBuilder = new BenzBuilder(); 
	private BmwBuilder bmwBuilder = new BmwBuilder(); 
	List<String> sequence = new ArrayList<String>(); 
	
	public BenzModel getABenzModel() { 
		sequence.clear(); 
		sequence.add(CarModel.KEY_STEP_START); 
		sequence.add(CarModel.KEY_STEP_ENGINE_BOOM); 
		sequence.add(CarModel.KEY_STEP_ALAM); 
		sequence.add(CarModel.KEY_STEP_STOP); 
		benzBuilder.setSequence(sequence); 
		return benzBuilder.getCarModel(); 
	}
	public BenzModel getBBenzModel() { 
		sequence.clear(); 
		sequence.add(CarModel.KEY_STEP_START); 
		sequence.add(CarModel.KEY_STEP_ENGINE_BOOM); 
		sequence.add(CarModel.KEY_STEP_STOP); 
		benzBuilder.setSequence(sequence); 
		return benzBuilder.getCarModel(); 
	}
	public BmwModel getCBmwModel() { 
		sequence.clear(); 
		sequence.add(CarModel.KEY_STEP_START); 
		sequence.add(CarModel.KEY_STEP_ALAM); 
		sequence.add(CarModel.KEY_STEP_STOP); 
		bmwBuilder.setSequence(sequence); 
		return bmwBuilder.getCarModel(); 
	}
	public BmwModel getDBmwModel() { 
		sequence.clear(); 
		sequence.add(CarModel.KEY_STEP_START); 
		sequence.add(CarModel.KEY_STEP_STOP); 
		bmwBuilder.setSequence(sequence); 
		return bmwBuilder.getCarModel(); 
	}
	
}
